home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / os2 / pvm34b3.zip / pvm34b3 / pvm3 / libfpvm / WIN32 / Pvmfpack.c < prev    next >
C/C++ Source or Header  |  1997-07-22  |  980b  |  55 lines

  1.  
  2. /* $Id: Pvmfpack.c,v 1.1 1997/06/27 16:28:43 pvmsrc Exp $ */
  3.  
  4. #ifdef WIN32
  5. #include "..\..\include\pvm3.h"
  6. #include "..\..\src\pvmwin.h"
  7. #else 
  8. #include "pvm3.h"
  9. #endif
  10.  
  11. #include "pvm_consts.h"
  12.  
  13. void /*__stdcall*/ __fortran
  14. PVMFPACK (what, vp, cnt, std, info)
  15.     int *what, *cnt, *std, *info;
  16.  
  17. #ifdef __STDC__
  18.     void *vp;
  19. #else
  20.     char *vp;
  21. #endif
  22. {
  23.     switch( *what )
  24.     {
  25.     case BYTE1:
  26.         *info = pvm_pkbyte((char*)vp, *cnt, *std);
  27.         break;
  28.     case INTEGER2:
  29.         *info = pvm_pkshort((short*)vp, *cnt, *std);
  30.         break;
  31.     case INTEGER4:
  32.         *info = pvm_pkint((int*)vp, *cnt, *std);
  33.         break;
  34.     case REAL4:
  35.         *info = pvm_pkfloat((float*)vp, *cnt, *std);
  36.         break;
  37.     case COMPLEX8:
  38.         *info = pvm_pkcplx((float*)vp, *cnt, *std);
  39.         break;
  40.     case REAL8:
  41.         *info = pvm_pkdouble((double*)vp, *cnt, *std);
  42.         break;
  43.     case COMPLEX16:
  44.         *info = pvm_pkdcplx((double*)vp, *cnt, *std);
  45.         break;
  46.     case STRING:
  47.         *info = pvm_pkbyte((char*)vp, *cnt, *std);
  48.         break;
  49.     default:
  50.         *info = PvmBadParam;
  51.         break;
  52.     }
  53. }
  54.  
  55.